package com.finance.rule.service;


import com.finance.base.enums.*;
import com.finance.base.exception.BaseException;
import com.finance.framework.lang.Page;
import com.finance.framework.lang.PageResultBO;
import com.finance.rule.bean.pojo.PieceRangeRule;
import com.finance.system.bean.pojo.Region;
import com.finance.system.bean.pojo.Supplier;

import java.util.List;

public interface IPieceRangeService {
	PieceRangeRule getById(Long id);
    List<PieceRangeRule> listAll();
	PageResultBO<PieceRangeRule> listByPage(Page page);
	boolean add(PieceRangeRule pieceRange);
	boolean delete(String uId, List<String> ids);
	boolean update(PieceRangeRule pieceRange) throws BaseException;
	boolean batchAdd(List<PieceRangeRule> pieceRanges);
	List<PieceRangeRule> getPieceRangeRuleBySupplier(Supplier supplier);
	List<PieceRangeRule> getPieceRangeRuleByRegion(Region region);
	List<PieceRangeRule> getPieceRangeRuleByDirection(DirectionEnum directionEnum);
	List<PieceRangeRule> getPieceRangeRuleByTemperature(TemperatureEnum temperatureEnum);
	List<PieceRangeRule> getPieceRangeRuleByScheduleType(ExpressScheduleTypeEnum expressScheduleTypeEnum);
	List<PieceRangeRule> getPieceRangeRuleByPackageSize(PackageSizeEnum packageSizeEnum);
	List<PieceRangeRule> getPieceRangeRuleBySinger(SignerEnum signerEnum);
 }
